/**
 * Created by Administrator on 2017/6/19 0019.
 */
function saveFriendMessage(){
    if($.cookie("MYID")){
        id=$.cookie("MYID");
        /*保存好友申请*/
//环信建立连接
        var conn = new WebIM.connection({
            https: WebIM.config.https,
            url: WebIM.config.xmppURL,
            isAutoLogin: WebIM.config.isAutoLogin,
            isMultiLoginSessions: WebIM.config.isMultiLoginSessions
        });
//登录
        var options = {
            apiUrl: WebIM.config.apiURL,
            user:id,
            pwd:id,
            appKey: "pulu#pulu"
        };
        conn.open(options);
        var havingnewsnow="no";//当前没有好友信息
        var fromuserid;
//函数列队执行--------------------------------------
        var stack=[];//保存执行函数数组
        var messarrid=[];//保存信息 ↑stack中函数使用
//编写函数列队方法 next();
        function next(){
            //执行最靠前的一个
            var fn=stack[0];
            if(typeof fn==="function")fn(messarrid[0]);
        }
        conn.listen({
            //事件监听（加好友通知）
            onPresence: function ( e ) {
                //只处理好友申请
                if ( e.type === 'subscribe'&&(e.status!="[resp:true]")){
                    //处理信息数据格式 方便调用
                    var mes={"type":e.type,"from":e.from,"status":e.status};
                    //将信息插入到数组中 进行保存
                    messarrid.push(mes);
                    //服务器传递数据
                    function sendfriendnot(e){
                        if ( e.type === 'subscribe' ){
                            $.ajax({
                                type:"post",
                                url:savefriendnoteurl,
                                data:{"userId":id,"friendId":e.from,"msg":e.status},
                                success:function(d){
                                    stack.shift();
                                    messarrid.shift();
                                    next();
                                }
                            });
                        }
                    }
                    //将方法插入到数组中 列队执行
                    //stack.push(handlePresence);
                    stack.push(sendfriendnot);
                    //执行next()
                    next();
                }

            },
            //收到联系人订阅请求、处理群组、聊天室被踢解散等消息
            onOpened: function ( message ) {          //连接成功回调
                //如果isAutoLogin设置为false，那么必须手动设置上线，否则无法收消息
                conn.setPresence();
                conn.getRoster({
                    success: function ( roster ) {
                        for ( var i = 0, l = roster.length; i < l; i++ ) {
                            var ros = roster[i];
                            //ros.subscription值为both/to为要显示的联系人，此处与APP需保持一致，才能保证两个客户端登录后的好友列表一致
                            if ( ros.subscription === 'both' || ros.subscription === 'to' ) {
                                //console.log(ros);
                            }
                        }
                    },
                    error:function(d){
                        console.log(d);
                    }
                });
                //console.log("结束调用好友列表");
            },
            onClosed: function ( message ) {},         //连接关闭回调
            onEmojiMessage: function ( message ) {},   //收到表情消息
            onPictureMessage: function ( message ) {}, //收到图片消息
            onCmdMessage: function ( message ) {},     //收到命令消息
            onAudioMessage: function ( message ) {},   //收到音频消息
            onLocationMessage: function ( message ) {},//收到位置消息
            onFileMessage: function ( message ) {},    //收到文件消息
            onVideoMessage: function ( message ) {},   //收到视频消息
            onRoster: function ( message ) {},         //处理好友申请
            onInviteMessage: function ( message ) {},  //处理群组邀请
            onOnline: function () {},                  //本机网络连接成功
            onOffline: function () {},                 //本机网络掉线
            onError: function ( message ) {}           //失败回调
        });
    };
    this.addFriend=function(id,nick){
        conn.subscribe({
            to: id,
            message: nick+"已经阅读你的pulu3次，请求加为好友"
        });
    }
}
saveFriendMessage();